﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000F17 RID: 3863
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueMagicDifficultyInfo : IMessage<RogueMagicDifficultyInfo>, IMessage, IEquatable<RogueMagicDifficultyInfo>, IDeepCloneable<RogueMagicDifficultyInfo>, IBufferMessage
	{
		// Token: 0x17003119 RID: 12569
		// (get) Token: 0x0600AD58 RID: 44376 RVA: 0x001D52C9 File Offset: 0x001D34C9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueMagicDifficultyInfo> Parser
		{
			get
			{
				return RogueMagicDifficultyInfo._parser;
			}
		}

		// Token: 0x1700311A RID: 12570
		// (get) Token: 0x0600AD59 RID: 44377 RVA: 0x001D52D0 File Offset: 0x001D34D0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueMagicDifficultyInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x1700311B RID: 12571
		// (get) Token: 0x0600AD5A RID: 44378 RVA: 0x001D52E2 File Offset: 0x001D34E2
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueMagicDifficultyInfo.Descriptor;
			}
		}

		// Token: 0x0600AD5B RID: 44379 RVA: 0x001D52E9 File Offset: 0x001D34E9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicDifficultyInfo()
		{
		}

		// Token: 0x0600AD5C RID: 44380 RVA: 0x001D52F1 File Offset: 0x001D34F1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicDifficultyInfo(RogueMagicDifficultyInfo other) : this()
		{
			this.difficultyId_ = other.difficultyId_;
			this.isUnlocked_ = other.isUnlocked_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600AD5D RID: 44381 RVA: 0x001D5322 File Offset: 0x001D3522
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicDifficultyInfo Clone()
		{
			return new RogueMagicDifficultyInfo(this);
		}

		// Token: 0x1700311C RID: 12572
		// (get) Token: 0x0600AD5E RID: 44382 RVA: 0x001D532A File Offset: 0x001D352A
		// (set) Token: 0x0600AD5F RID: 44383 RVA: 0x001D5332 File Offset: 0x001D3532
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint DifficultyId
		{
			get
			{
				return this.difficultyId_;
			}
			set
			{
				this.difficultyId_ = value;
			}
		}

		// Token: 0x1700311D RID: 12573
		// (get) Token: 0x0600AD60 RID: 44384 RVA: 0x001D533B File Offset: 0x001D353B
		// (set) Token: 0x0600AD61 RID: 44385 RVA: 0x001D5343 File Offset: 0x001D3543
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool IsUnlocked
		{
			get
			{
				return this.isUnlocked_;
			}
			set
			{
				this.isUnlocked_ = value;
			}
		}

		// Token: 0x0600AD62 RID: 44386 RVA: 0x001D534C File Offset: 0x001D354C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueMagicDifficultyInfo);
		}

		// Token: 0x0600AD63 RID: 44387 RVA: 0x001D535A File Offset: 0x001D355A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueMagicDifficultyInfo other)
		{
			return other != null && (other == this || (this.DifficultyId == other.DifficultyId && this.IsUnlocked == other.IsUnlocked && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600AD64 RID: 44388 RVA: 0x001D5398 File Offset: 0x001D3598
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.DifficultyId != 0U)
			{
				num ^= this.DifficultyId.GetHashCode();
			}
			if (this.IsUnlocked)
			{
				num ^= this.IsUnlocked.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600AD65 RID: 44389 RVA: 0x001D53F0 File Offset: 0x001D35F0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600AD66 RID: 44390 RVA: 0x001D53F8 File Offset: 0x001D35F8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600AD67 RID: 44391 RVA: 0x001D5404 File Offset: 0x001D3604
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.DifficultyId != 0U)
			{
				output.WriteRawTag(24);
				output.WriteUInt32(this.DifficultyId);
			}
			if (this.IsUnlocked)
			{
				output.WriteRawTag(120);
				output.WriteBool(this.IsUnlocked);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600AD68 RID: 44392 RVA: 0x001D5460 File Offset: 0x001D3660
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.DifficultyId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.DifficultyId);
			}
			if (this.IsUnlocked)
			{
				num += 2;
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600AD69 RID: 44393 RVA: 0x001D54AC File Offset: 0x001D36AC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueMagicDifficultyInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.DifficultyId != 0U)
			{
				this.DifficultyId = other.DifficultyId;
			}
			if (other.IsUnlocked)
			{
				this.IsUnlocked = other.IsUnlocked;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600AD6A RID: 44394 RVA: 0x001D54FC File Offset: 0x001D36FC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600AD6B RID: 44395 RVA: 0x001D5508 File Offset: 0x001D3708
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 24U)
				{
					if (num != 120U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						this.IsUnlocked = input.ReadBool();
					}
				}
				else
				{
					this.DifficultyId = input.ReadUInt32();
				}
			}
		}

		// Token: 0x0400465A RID: 18010
		private static readonly MessageParser<RogueMagicDifficultyInfo> _parser = new MessageParser<RogueMagicDifficultyInfo>(() => new RogueMagicDifficultyInfo());

		// Token: 0x0400465B RID: 18011
		private UnknownFieldSet _unknownFields;

		// Token: 0x0400465C RID: 18012
		public const int DifficultyIdFieldNumber = 3;

		// Token: 0x0400465D RID: 18013
		private uint difficultyId_;

		// Token: 0x0400465E RID: 18014
		public const int IsUnlockedFieldNumber = 15;

		// Token: 0x0400465F RID: 18015
		private bool isUnlocked_;
	}
}
